The “Virtual Rooms Videoconferencing System” (VRVS) is based on the Virtual Rooms concept and is described in U.S. patent application Ser. No. 09/839,847 filed Apr. 20, 2001 entitled Virtual Room Videoconferencing System, assigned to the assignee of the present application and incorporated by reference herein in its entirety. Several participants from different geographical places can have a conference (text, audio, video and shared applications) in a unique virtual area. This space is called a “Virtual Room”. VRVS provides a videoconference service over IP networks via an intuitive web-based graphical user interface for non-expert users. VRVS has no frontier and has registered users spread in over 120 countries.
Each member of a virtual conference room makes a connection between their computing device and a reflector. A reflector is a host (server) that interconnects each user to a virtual room. The reflector in turn connects to one or more other reflectors via one or more tunnels (such as a TCP tunnel). A tunnel is a permanent uni-cast or multi-cast connection between reflectors. The reflectors and their links form a set of virtual sub-networks through which audio, video or data, flows. When a user wishes to join a virtual conference, they choose the appropriate room, which in turn causes the system to locate the ideal reflector for that user. The ideal reflector may be the reflector that is closest to the user's system or it may be another reflector that is specifically optimized for that user.
Once the reflector is chosen, all information is passed from the user to all other members of the virtual conference room by sending packets of information from the user, to the reflector, and across one or more tunnels so that the packets are broadcast to each reflector where a member of the virtual conference room is connected and may receive the broadcasted packets. When multiple users are connected to the same reflector, the reflector serves to multiply the stream of packets at the local site, so that each user receives the packet.